package com.xinruke.hostels.reservation.user.service;

import com.xinruke.hostels.common.vo.ResultVO;
import com.xinruke.hostels.common.vo.query.RowsDataVO;
import com.xinruke.hostels.reservation.user.interfaces.dto.*;


public interface MemberService {
    /**
     * 查看会员的基本信息
     * @author Jinz
     * @date 2019-06-30 12:45
     * @param memberDetailQuertDTO
     * @return com.xinruke.hostels.common.vo.ResultVO<com.xinruke.hostels.reservation.user.interfaces.dto.MemberDetailQuertResultDTO>
     */
    ResultVO<MemberDetailQuertResultDTO> detail(MemberDetailQuertDTO memberDetailQuertDTO);

    /**
     * 会员新增
     * @param memberAddDTO
     * @return
     */
    ResultVO userAdd(MemberAddDTO memberAddDTO);

    /**
     * 会员密码修改
     * @author Jinz
     * @date 2019-06-30 13:10
     * @param memberPassWordUpdateDTO
     * @return com.xinruke.hostels.common.vo.ResultVO
     */
    ResultVO update(MemberPassWordUpdateDTO memberPassWordUpdateDTO);

    /**
     * 分页查询出所有的会员信息
     * @param memberListQueryDTO
     * @Author: ChenXiangpeng
     * @Date: 2019/7/26 15:44
     * @return
     */
    ResultVO<RowsDataVO<MemberDetailQuertResultDTO>> getMemberList(MemberListQueryDTO memberListQueryDTO);

    /**
     * 根据ID查询会员信息
     * @param memberDetailQueryByIdDTO
     * @Author: ChenXiangpeng
     * @Date: 2019/7/26 16:51
     * @return
     */
    ResultVO<MemberDetailQuertResultDTO> detailById(MemberDetailQueryByIdDTO memberDetailQueryByIdDTO);

}
